<script>
export default {
  // 如果改属性设置true,表示该组件不再有状态(data数据)
  // 如果此时组件需要数据，那么可以通过父传子的方式获取，此时render函数可以通过参数二得到context.props
  functional: true,
  props: {
    msg: {
      type: String,
      required: true
    }
  },
  // 单文件组件如果没有template标签，那么可以使用render函数提供模板
  render(createElemet, context) {
    // createElemet创建的表面是DOM元素，但是本质上Vnode(虚拟节点)
    // 虚拟节点是对真实节点的一种描述，本质上是一种对象
    // render的参数有createElemet和context
    // 通过context.props可以获取父组件传输的数据
    // createElemet的参数如下：
    //  参数一：标签名称
    // 参数二：标签的属性
    // 参数三：签的子元素(如果有多个子元素，使用数组)
    const div = createElemet('div', null, '测试Render')
    // render函数的返回值就是模板的内容
    return div
  }
}
</script>
